#ifndef _GA_H_
#define _GA_H_

class Population;

class Ga
{
  public:
    Ga();
    virtual ~Ga();
    // Start a run of the GA.
    void start();


  private:
    // Parameters that affect the Individuals
    int m_population_size;
    float m_mutation_rate;
    float m_crossover_rate;
    // The population.
    Population *m_population;
    
  private:
    // Init the initial parameters of the GA.
    void init();
};


#endif /* _GA_H_ */
